草庐IT

javascript - 停止从另一个函数执行 Javascript 函数

全部标签

Ruby - 获取正在执行的文件

我正在尝试获取对传递给ruby​​解释器的脚本的引用。例如,如果我正在运行rubyfoo.rb,我想获取对foo.rb文件的引用。我认为在Python中,这可以通过sys.argv[0]访问。可以调用__FILE__但这不是我正在寻找的解决方案,因为__FILE__生成当前执行代码所在的文件。有什么办法吗? 最佳答案 使用File类中的方法来操作FILE在test.rb里面,我有puts__FILE__putsFile.dirname(__FILE__)putsFile.basename(__FILE__)当你运行时,rubya/b

ruby - 从 ruby​​ 脚本运行另一个 ruby​​ 脚本

在ruby​​中,是否可以指定使用与运行原始脚本相同的ruby​​解释器来调用另一个ruby​​脚本?例如,如果a.rb运行b.rb几次,是否可以替换system("ruby","b.rb","foo","bar")用类似的东西run_ruby("b.rb","foo","bar")所以如果你使用ruby1.9.1a.rb在原件上,ruby1.9.1将在b.rb上使用,但如果您只使用rubya.rb在原件上,ruby会用在b.rb上吗?我不想使用shebang,因为我希望它能够在不同的计算机上运行,​​其中一些没有/usr/bin/env.编辑:我不是说load或require等等,但

ruby - Ruby 是否提供了一种使用指定编码执行 File.read() 的方法?

在ruby​​1.9.x中,我们可以使用File.open('filename','r:iso-8859-1')指定编码。如果我直接将许多短文件读入字符串,我通常更喜欢使用单行File.read()。有什么方法可以直接指定编码,还是必须求助于以下方法之一?str=File.read('filename')str.force_encoding('iso-8859-1')或f=File.open('filename','r:iso-8859-1')s=''while(line=f.gets)s+=lineendf.close 最佳答案

ruby - 在 sublime text 2 中执行 Ruby 代码

如何使用ST2运行Ruby文件并查看输出?我想我应该使用build命令。但是如果我有这个:deffoobar"helloworld"endputsfoobar然后按cmd+shift+b。我只看到了[Finishedin0.1s]在textmate中,我可以使用cmd+r(运行命令)并查看ruby​​脚本的所有输出。我是不是漏了什么? 最佳答案 我没有保存文件。这就是为什么它不起作用。要在不先保存文件的情况下运行文件(如TextMate),您应该尝试使用Anypreter插件。 关于ru

ruby - 查明一个IP是否在IP范围内

你怎么知道一个ip,比如说62.156.244.13在62.0.0.0范围内和62.255.255.255 最佳答案 >>require"ipaddr"=>true>>low=IPAddr.new("62.0.0.0").to_i=>1040187392>>high=IPAddr.new("62.255.255.255").to_i=>1056964607>>ip=IPAddr.new("62.156.244.13").to_i=>1050473485>>(low..high)===ip=>true如果给你的是网络而不是起始地址和结

ruby - 我如何判断哪些模块已混合到一个类中?

我有一个类,其中有许多模块根据某些运行时标准混入其中。我希望能够获得一个列表,其中列出了哪些模块已混合到此类中。你怎么做到的?更新所以当我说类时,我指的是对象,因为它是在运行时使用以下方法扩展的对象:obj.extend(MyModule)obj.included_modules和obj.ancestors不存在,因此您无法从那里获取已混合的模块。 最佳答案 尝试:MyClass.ancestors.select{|o|o.class==Module}例如:>>Array.ancestors.select{|o|o.class==M

ruby - 如何在 Ruby 中生成一个包含 n 个唯一随机数的列表?

这是我目前所拥有的:myArray.map!{rand(max)}然而,显然,有时列表中的数字不是唯一的。如何确保我的列表只包含唯一编号,而不必创建一个更大的列表,然后从中选择n个唯一编号?编辑:我真的很想看到这个没有循环的完成——如果可能的话。 最佳答案 (0..50).to_a.sort{rand()-0.5}[0..x](0..50).to_a可以替换成任意数组。0是“最小值”,50是“最大值”x是“我想要多少个值”当然,x不可能被允许大于max-min:)扩展其工作原理(0..5).to_a==>[0,1,2,3,4,5][

ruby - 如何关闭 Rails 3.1 上的自动样式表/javascript 生成?

我有一个正在处理的Rails3.1项目,但我不希望controller_name.css.sass和controller_name.js.coffee每次运行railsgeneratecontrollercontroller_name时都会生成。我可以发誓我已经在互联网上的某个地方看到了设置,但我现在找不到它了。这是什么?请记住,我仍然想使用AssetPipeline和CoffeeScript/Sass集成,但我正在以我自己的方式组织这些文件。我很确定答案是命令行参数,但是使用生成器设置或隐藏文件或其他东西关闭它的奖励积分。编辑:我找到了它的命令行标志。railsgeneratecon

ruby - 你如何在 Ruby 中产生一个子进程?

我想将主进程中的一段代码卸载到子进程中,使其并发运行。我还想要生成的子进程的PID,以便在必要时监视和终止它。 最佳答案 除了Chris的出色回答之外,请记住从您的master调用Process.wait以收割您的子进程,否则您将留下僵尸。评论中要求的示例:pid=Process.forkdoputs"child,pid#{Process.pid}sleeping..."sleep5puts"childexiting"endputs"parent,pid#{Process.pid},waitingonchildpid#{pid}"P

Unity3D不同脚本函数或参数之间调用

脚本通讯假如,我们有两个脚本:Main.cs,SliderControl.cs。现在希望从SliderControl.cs调用Main.cs内的函数或参数。(一)、被调用脚本函数为static类型,调用时直接用类名.参数publicclassMain:MonoBehaviour{publicstaticintindex=0;}//在SliderControl.cs中调用indexintpara=Main.index;(二)、GameObject.Find(“脚本所挂载在的物体的名字”)找到游戏对象,再通过GetComponent().函数名()调用脚本中的函数,只能调用public类型函数pu